﻿using DtoFw.Enum;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DtoFw.Query
{
    public class EvidenceReqDto : BaseOperator
    {
        public System.Int64? CaseId { get; set; }
        public System.String No { get; set; }
        public System.String Name { get; set; }
        public int Status { get; set; }
        public System.Int64? LogId { get; set; }
        public System.DateTime? UsefulLife { get; set; }
        public System.String Shape { get; set; }
        public System.String Tag { get; set; }
        public System.String Class { get; set; }
        public System.String Category { get; set; }

        public System.String ClassName { get; set; }
        public System.String CategoryName { get; set; }
        public System.Int32? Quantity { get; set; }
        public System.String Unit { get; set; }
        public System.String EvidenceSource { get; set; }
        public System.String ExtractionParts { get; set; }
        public System.String ExtractMethod { get; set; }
        public System.Int64? ExtractionPerson1Id { get; set; }
        public System.Int64? ExtractionPersonId { get; set; }
        public System.String ExtractionPerson1Nmae { get; set; }
        public System.String ExtractionPersonName { get; set; }
        public System.DateTime? ExtractionDateTime { get; set; }
        public System.Int64? ExtractionOrganId { get; set; }
        public System.String ExtractionOrganName { get; set; }
        public System.String Describe { get; set; }
        public System.String Flag { get; set; }
        public string Source { get; set; }
        public string SourceName { get; set; }
        public System.String AreaId { get; set; }
        public string rFID { get; set; }

        public string Location { get; set; }


        public string Remark { get; set; }

        public string SubCategoryId { get; set; }
        public System.String SubCategoryName { get; set; }
        public System.String XingHao { get; set; }
        public System.String ChengSe { get; set; }
        public System.DateTime? BuyDate { get; set; }
        public System.Decimal? BuyPrice { get; set; }

        public System.DateTime? CaiQuChuoSiDate { get; set; }
    }
    public class EvidencePostReqDto : EvidenceReqDto
    {

    }
    public class EvidencePutReqDto : EvidenceReqDto
    {
        public long Id { get; set; }
    }

    public class EvidenceLocationQueryReqDto : BaseQuery 
    {
        /// <summary>
        /// 位置ID
        /// </summary>
        public long? LocationId { get; set; }
        /// <summary>
        /// 案件号
        /// </summary>
        public string CaseNo { get; set; }
        /// <summary>
        /// 勘验号
        /// </summary>
        public string InspectionNo { get; set; }
        /// <summary>
        /// 物证号
        /// </summary>
        public string EvidenceNo { get; set; }
        /// <summary>
        /// 0:现在物品、1：历史物品
        /// </summary>
        public int HistoryStatus { get; set; }
    }

    public class EvidenceQueryReqDto : BaseQuery
    {
        public long CaseId { get; set; }
        public string CaseNo { get; set; }
        public string InspectionNo { get; set; }
        public string CaseName { get; set; }
        public DateTime? CaseTimeStart { get; set; }
        public DateTime? CaseTimeEnd { get; set; }
        public string EvidenceNo { get; set; }
        public string EvidenceName { get; set; }
        public int EvidenceStatus { get; set; }
        public string PersonName { get; set; }
        public DateTime? ExtractionDateTimeStart { get; set; }
        public DateTime? ExtractionDateTimeEnd { get; set; }


        public DateTime? CreateStartDateTime { get; set; }
        public DateTime? CreateEndDateTime { get; set; }
    }

    public class CaseEvidenceQueryReqDto
    {
        public long CaseId { get; set; }
        /// <summary>
        /// 1借调
        /// </summary>
        public EnumEvidenceStatus Status { get; set; } = EnumEvidenceStatus.WZ;
    }

    public class EvidenceRfidListReqDto : BaseOperator 
    {
        public List<EvidenceRfidReqDto> list { get; set; }
    }

    public class EvidenceRfidReqDto
    {
        public long Id { get; set; }
        public string RFID { get; set; }
    }
    public class EvidenceLocationPutReqDto:BaseOperator
    {
        public List<long> EvidenceIds { get; set; }
        public string LocationCode { get; set; }
        public long LocationId { get; set; }
        public string LocationName { get; set; }
    }

    /// <summary>
    /// 案件附件查询
    /// </summary>
    public class CaseAttachReqDto : BaseQuery
    {
        /// <summary>
        /// 案件id
        /// </summary>
        public string caseid { get; set; }
        /// <summary>
        /// 档案id
        /// </summary>
        public string evidenceId { get; set; }
        /// <summary>
        /// 档案id
        /// </summary>
        public string attachId { get; set; }
        /// <summary>
        /// 排险已关联
        /// </summary>
        public string exclude { get; set; }

    }
}
